package com.cloudeasy.area.repository;

import com.cloudeasy.area.po.AreaRely;
import org.springframework.data.mongodb.repository.MongoRepository;

import java.util.List;
import java.util.Optional;

public interface AreaRelyRepository extends MongoRepository<AreaRely, String> {
    /**
     * 根据id查找区域依赖记录
     *
     * @param ids Id列表
     * @return {@link List<AreaRely>}
     */
    List<AreaRely> findAllByIdIn(List<String> ids);

    /**
     * 根据名称查找区域依赖记录
     *
     * @param names 名称列表
     * @return {@link List<AreaRely>}
     */
    List<AreaRely> findAllByNameIn(List<String> names);

    /**
     * 根据ipath正则查找区域依赖记录
     *
     * @param pathRegex path正则
     * @return {@link List<AreaRely>}
     */
    List<AreaRely> findAllByPathRegex(String pathRegex);

    /**
     * 根据区域名称查找区域依赖记录
     *
     * @param name 名称
     * @return {@link Optional<AreaRely>}
     */
    Optional<AreaRely> findByNameLike(String name);
}
